1. Field of Invention
The present invention relates to simulation and animation generally and more particularly to simulating cloth in applications related to animation technology.
2. Description of Related Art
Cloth animation is frequently a key ingredient for adding believability to computer generated imagery. A variety of approaches have been developed within the Computer Animation and Visual Effects industry including methods based on key-frame animation and numerical simulation. Key-frame animation generally involves specifying key frames that can be interpolated (or stitched together) for the animation. For example, in some operational settings twenty-four frames are used per second of animation, and one out of ten frames are key frames (not necessarily uniformly spaced). Numerical simulation generally involves integration of a related dynamic model that is sampled at the desired animation frequency (e.g., 24 Hz). (“Stable but responsive cloth”, K.-J. Choi and H.-S. Ko, ACM Transactions on Graphics (ACM SIGGRAPH 2002), 21(3):604-611, July 2002; “Large steps in cloth simulation”, D. Baraff and A. Witkin, In Proceedings of ACM SIGGRAPH 98, pages 43-54, ACM Press, 1998; “Versatile and efficient techniques for simulating cloth and other deformable objects”, P. Volino, M. Courchesne, and N. Magnenat-Thalmann, Proceedings of ACM SIGGRAPH 95, pages 137-144, ACM Press, 1995; “Robust treatment of collisions, contact and friction for cloth animation”, R. Bridson, R. Fedkiw, and J. Anderson, ACM Transactions on Graphics (ACM SIGGRAPH 2002), 21(3):594-603, July 2002; “Simulation of clothing with folds and wrinkles”, R. Bridson, S. Marino, and R. Fedkiw, Proceedings of ACM SIGGRAPH/Eurographics Symposium on Computer Animation (SCA 2003), pages 28-36, ACM Press, 2003; “Discrete shells”, E. Grinspun, A. Hirani, M. Desbrun, and P. Schröder, Proceedings of ACM SIGGRAPH/Eurographics Symposium on Computer Animation (SCA 2003), pages 62-67, ACM Press, 2003.)
In general, a more realistic cloth animation can be realized by a direct numerical simulation. In this type of animation, the animator typically sets up an initial shape of a garment and defines a set of physical properties for the cloth such as material density, stretch and bend stiffness, internal damping, air drag and collision friction. Typically, the animator also sets up other dynamic objects such as static and moving collision obstacles and specifies external force fields (e.g., based on wind or gravity) to form a realistic dynamic scene. The dynamic scene also may include constraints on cloth motion, for example, to model seams, elastic elements, and tack pins. In addition there may be additional forces or constraints that do not have any direct physical significance. In this way, the animator can control the overall look and feel of the cloth motion by controlling the elements of the dynamic scene and related physical or nonphysical parameters that can be specified by spatial distributions. However animator's control over details in the motion and overall time evolution of cloth shape may be limited, for example, to key-framing some aspects of the dynamics (e.g., as an initial condition).
Under the best conditions, the motion thus computed is very believable and rich in details that relate to the underlying physics. It is very difficult, or even impossible, to achieve a corresponding complexity of motion by a traditional approach of key-frame based animation. However, the direct numerical simulation is limited in that, unlike key-frame based animation, it is more difficult to specifically direct the resulting motion. Often, an artistic director desires a specific detail in the motion or even some change the overall aspect of the motion. For example, the director might want the cloth to flutter in a specific way or to retain some semi-rigid shape. In general, the form of the numerical simulation makes it difficult or at least cumbersome to achieve precise control over the cloth simulation (e.g., by re-setting the initial condition). Thus, substantial background analysis and multiple iterations may be required to achieve a cloth animation that satisfies the director's artistic vision.
Thus, there is a need for improved cloth simulation particularly for applications related to animation technology.